home *** CD-ROM | disk | FTP | other *** search
Text File | 1991-04-20 | 58.6 KB | 2,611 lines |
- Request for Comments: 823
- Obsoletes IEN-30 and IEN-109
-
-
-
-
- THE DARPA INTERNET GATEWAY
-
-
-
- RFC 823
-
-
-
-
-
-
- Robert Hinden
- Alan Sheltzer
-
-
-
-
-
- Bolt Beranek and Newman Inc.
- 10 Moulton St.
- Cambridge, Massachusetts 02238
-
-
-
-
-
- September 1982
-
-
-
-
- Prepared for
-
- Defense Advanced Research Projects Agency
- Information Processing Techniques Office
- 1400 Wilson Boulevard
- Arlington, Virginia 22209
-
-
-
-
-
- This RFC is a status report on the Internet Gateway developed by BBN. It
- describes the Internet Gateway as of September 1982. This memo presents
- detailed descriptions of message formats and gateway procedures, however
- this is not an implementation specification, and such details are
- subject to change.
-
-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- Table of Contents
-
-
-
-
- 1 INTRODUCTION.......................................... 1
- 2 BACKGROUND............................................ 2
- 3 FORWARDING INTERNET DATAGRAMS......................... 5
- 3.1 Input............................................... 5
- 3.2 IP Header Checks.................................... 6
- 3.3 Routing............................................. 7
- 3.4 Redirects........................................... 9
- 3.5 Fragmentation....................................... 9
- 3.6 Header Rebuild..................................... 10
- 3.7 Output............................................. 10
- 4 PROTOCOLS SUPPORTED BY THE GATEWAY................... 12
- 4.1 Cross-Net Debugging Protocol....................... 12
- 4.2 Host Monitoring Protocol........................... 12
- 4.3 ICMP............................................... 14
- 4.4 Gateway-to-Gateway Protocol........................ 14
- 4.4.1 Determining Connectivity to Networks............. 14
- 4.4.2 Determining Connectivity to Neighbors............ 16
- 4.4.3 Exchanging Routing Information................... 17
- 4.4.4 Computing Routes................................. 19
- 4.4.5 Non-Routing Gateways............................. 22
- 4.4.6 Adding New Neighbors and Networks................ 23
- 4.5 Exterior Gateway Protocol.......................... 24
- 5 GATEWAY SOFTWARE..................................... 26
- 5.1 Software Structure................................. 26
- 5.1.1 Device Drivers................................... 27
- 5.1.2 Network Software................................. 27
- 5.1.3 Shared Gateway Software.......................... 29
- 5.2 Gateway Processes.................................. 29
- 5.2.1 Network Processes................................ 29
- 5.2.2 GGP Process...................................... 30
- 5.2.3 HMP Process...................................... 31
- APPENDIX A. GGP Message Formats.......................... 32
- APPENDIX B. Information Maintained by Gateways........... 39
- APPENDIX C. GGP Events and Responses..................... 41
- REFERENCES............................................... 43
-
-
-
-
-
-
-
- -i-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- 1 INTRODUCTION
-
-
- This document explains the design of the Internet gateway
-
- used in the Defense Advanced Research Project Agency (DARPA)
-
- Internet program. The gateway design was originally documented
-
- in IEN-30, "Gateway Routing: An Implementation Specification"
-
- [2], and was later updated in IEN-109, "How to Build a Gateway"
-
- [3]. This document reflects changes made both in the internet
-
- protocols and in the gateway design since these documents were
-
- released. It supersedes both IEN-30 and IEN-109.
-
-
- The Internet gateway described in this document is based on
-
- the work of many people; in particular, special credit is given
-
- to V. Strazisar, M. Brescia, E. Rosen, and J. Haverty.
-
-
- The gateway's primary purpose is to route internet datagrams
-
- to their destination networks. These datagrams are generated and
-
- processed as described in RFC 791, "Internet Protocol - DARPA
-
- Internet Program Protocol Specification" [1]. This document
-
- describes how the gateway forwards datagrams, the routing
-
- algorithm and protocol used to route them, and the software
-
- structure of the current gateway. The current gateway
-
- implementation is written in macro-11 assembly language and runs
-
- in the DEC PDP-11 or LSI-11 16-bit processor.
-
-
-
- -1-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- 2 BACKGROUND
-
-
- The gateway system has undergone a series of changes since
-
- its inception, and it is continuing to evolve as research
-
- proceeds in the Internet community. This document describes the
-
- implementation as of mid-1982.
-
-
- Early versions of gateway software were implemented using
-
- the BCPL language and the ELF operating system. This
-
- implementation evolved into one which used the MOS operating
-
- system for increased performance. In late 1981, we began an
-
- effort to produce a totally new gateway implementation. The
-
- primary motivation for this was the need for a system oriented
-
- towards the requirements of an operational communications
-
- facility, rather than the research testbed environment which was
-
- associated with the BCPL implementation. In addition, it was
-
- generally recognized that the complexity and buffering
-
- requirements of future gateway configurations were beyond the
-
- capabilities of the PDP-11/LSI-11 and BCPL architecture. The new
-
- gateway implementation therefore had a second goal of producing a
-
- highly space-efficient implementation in order to provide space
-
- for buffers and for the extra mechanisms, such as monitoring,
-
- which are needed for an operational environment.
-
-
-
-
- -2-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- This document describes the implementation of this new
-
- gateway which incorporates several mechanisms for operations
-
- activities, is coded in assembly language for maximum space-
-
- efficiency, but otherwise is fundamentally the same architecture
-
- as the older, research-oriented, implementations.
-
-
- One of the results of recent research is the thesis that
-
- gateways should be viewed as elements of a gateway system, where
-
- the gateways act as a loosely-coupled packet-switching
-
- communications system. For reasons of maintainability and
-
- operability, it is easiest to build such a system in an
-
- homogeneous fashion where all gateways are under a single
-
- authority and control, as is the practice in other network
-
- implementations.
-
-
- In order to create a system architecture that permitted
-
- multiple sets of gateways with each set under single control but
-
- acting together to implement a composite single Internet System,
-
- new protocols needed to be developed. These protocols, such as
-
- the "Exterior Gateway Protocol," will be introduced in the later
-
- releases of the gateway implementation.
-
-
- We also anticipate further changes to the gateway
-
- architecture and implementation to introduce support for new
-
-
-
- -3-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- capabilities, such as large numbers of networks, access control,
-
- and other requirements which have been proposed by the Internet
-
- research community. This document represents a snapshot of the
-
- current implementation, rather than a specification.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -4-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- 3 FORWARDING INTERNET DATAGRAMS
-
-
- This section describes how the gateway forwards datagrams
-
- between networks. A host computer that wants an IP datagram to
-
- reach a host on another network must send the datagram to a
-
- gateway to be forwarded. Before it is sent into the network, the
-
- host attaches to the datagram a local network header containing
-
- the address of the gateway.
-
-
-
-
- 3.1 Input
-
-
- When a gateway receives a message, the gateway checks the
-
- message's local network header for possible errors and performs
-
- any actions required by the host-to-network protocol. This
-
- processing involves functions such as verifying the local network
-
- header checksum or generating a local network acknowledgment
-
- message. If the header indicates that the message contains an
-
- Internet datagram, the datagram is passed to the Internet header
-
- check routine. All other messages received that do not pass
-
- these tests are discarded.
-
-
-
-
-
-
-
-
-
- -5-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- 3.2 IP Header Checks
-
-
- The Internet header check routine performs a number of
-
- validity tests on the IP header. Datagrams that fail these tests
-
- are discarded causing an HMP trap to be sent to the Internet
-
- Network Operations Center (INOC) [7]. The following checks are
-
- currently performed:
-
-
- o Proper IP Version Number
- o Valid IP Header Length ( >= 20 bytes)
- o Valid IP Message Length
- o Valid IP Header Checksum
- o Non-Zero Time to Live field
-
-
- After a datagram passes these checks, its Internet destination
-
- address is examined to determine if the datagram is addressed to
-
- the gateway. Each of the gateway's internet addresses (one for
-
- each network interface) is checked against the destination
-
- address in the datagram. If a match is not found, the datagram
-
- is passed to the forwarding routine.
-
-
- If the datagram is addressed to the gateway itself, the IP
-
- options in the IP header are processed. Currently, the gateway
-
- supports the following IP options:
-
-
-
-
-
-
-
-
- -6-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
-
- o NOP
- o End of Option List
- o Loose Source and Record Route
- o Strict Source and Record Route
-
-
- The datagram is next processed according to the protocol in the
-
- IP header. If the protocol is not supported by the gateway, it
-
- replies with an ICMP error message and discards the datagram.
-
- The gateway does not support IP reassembly, so fragmented
-
- datagrams which are addressed to the gateway are discarded.
-
-
-
-
- 3.3 Routing
-
-
- The gateway must make a routing decision for all datagrams
-
- that are to be to forwarded. The routing algorithm provides two
-
- pieces of information for the gateway: 1) the network interface
-
- that should be used to send this datagram and 2) the destination
-
- address that should be put in the local network header of the
-
- datagram.
-
-
- The gateway maintains a dynamic Routing Table which contains
-
- an entry for each reachable network. The entry consists of a
-
- network number and the address of the neighbor gateway on the
-
- shortest route to the network, or else an indication that the
-
-
-
-
- -7-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- gateway is directly connected to the network. A neighbor gateway
-
- is one which shares a common network with this gateway. The
-
- distance metric that is used to determine which neighbor is
-
- closest is defined as the "number of hops," where a gateway is
-
- considered to be zero hops from its directly connected networks,
-
- one hop from a network that is reachable via one other gateway,
-
- etc. The Gateway-to-Gateway Protocol (GGP) is used to update the
-
- Routing Table (see Section 4.4 describing the Gateway-to-Gateway
-
- Protocol).
-
-
- The gateway tries to match the destination network address
-
- in the IP header of the datagram to be forwarded, with a network
-
- in its Routing Table. If no match is found, the gateway drops
-
- the datagram and sends an ICMP Destination Unreachable message to
-
- the IP source. If the gateway does find an entry for the network
-
- in its table, it will use the network address of the neighbor
-
- gateway entry as the local network destination address of the
-
- datagram. However, if the final destination network is one that
-
- the gateway is directly connected to, the destination address in
-
- the local network header is created from the destination address
-
- in the IP header of the datagram.
-
-
-
-
-
-
-
- -8-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- 3.4 Redirects
-
-
- If the routing procedure decides that an IP datagram is to
-
- be sent back out the same network interface that it was read in,
-
- then this gateway is not on the shortest path to the IP final
-
- destination. Nevertheless, the datagram will still be forwarded
-
- to the next address chosen by the routing procedure. If the
-
- datagram is not using the IP Source Route Option, and the IP
-
- source network of the datagram is the same as the network of the
-
- next gateway chosen by the routing procedure, an ICMP Redirect
-
- message will be sent to the IP source host indicating that
-
- another gateway should be used to send traffic to the final IP
-
- destination.
-
-
-
-
- 3.5 Fragmentation
-
-
- The datagram is passed to the fragmentation routine after
-
- the routing decision has been made. If the next network through
-
- which the datagram must pass has a maximum message size that is
-
- smaller than the size of the datagram, the datagram must be
-
- fragmented. Fragmentation is performed according to the
-
- algorithm described in the Internet Protocol Specification [1].
-
- Certain IP options must be copied into the IP header of all
-
-
-
- -9-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- fragments, and others appear only in the first fragment according
-
- to the IP specification. If a datagram must be fragmented, but
-
- the Don't fragment bit is set, the datagram is discarded and an
-
- ICMP error message is sent to the IP source of the datagram.
-
-
-
-
- 3.6 Header Rebuild
-
-
- The datagram (or the fragments of the original datagram if
-
- fragmentation was needed) is next passed to a routine that
-
- rebuilds the Internet header. The Time to Live field is
-
- decremented by one and the IP checksum is recomputed.
-
-
- The local network header is now built. Using the
-
- information obtained from its routing procedure, the gateway
-
- chooses the network interface it considers proper to send the
-
- datagram and to build the destination address in the local
-
- network header.
-
-
-
-
- 3.7 Output
-
-
- The datagram is now enqueued on an output queue for delivery
-
- towards its destination. A limit is enforced on the size of the
-
- output queue for each network interface so that a slow network
-
-
-
- -10-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- does not unfairly use up all of the gateway's buffers. If a
-
- datagram cannot be enqueued due to the limit on the output queue
-
- length, it is dropped and an HMP trap is sent to the INOC. These
-
- traps, and others of a similar nature, are used by operational
-
- personnel to monitor the operations of the gateways.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -11-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- 4 PROTOCOLS SUPPORTED BY THE GATEWAY
-
-
- A number of protocols are supported by the gateway to
-
- provide dynamic routing, monitoring, debugging, and error
-
- reporting. These protocols are described below.
-
-
-
-
- 4.1 Cross-Net Debugging Protocol
-
-
- The Cross-Net Debugging Protocol (XNET) [8] is used to load
-
- the gateway and to examine and deposit data. The gateway
-
- supports the following XNET op-codes:
-
-
- o NOP
- o Debug
- o End Debug
- o Deposit
- o Examine
- o Create Process
-
-
-
-
- 4.2 Host Monitoring Protocol
-
-
- The Host Monitoring Protocol (HMP) [6] is used to collect
-
- measurements and status information from the gateways.
-
- Exceptional conditions in the gateways are reported in HMP traps.
-
- The status of a gateway's interfaces, neighbors, and the networks
-
- which it can reach are reported in the HMP status message.
-
-
-
- -12-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- Two types of gateway statistics, the Host Traffic Matrix and
-
- the gateway throughput, are currently defined by the HMP. The
-
- Host Traffic Matrix records the number of datagrams that pass
-
- through the gateway with a given IP source, destination, and
-
- protocol number. The gateway throughput message collects a
-
- number of important counters that are kept by the gateway. The
-
- current gateway reports the following values:
-
-
- o Datagrams dropped because destination net unreachable
-
- o Datagrams dropped because destination host unreachable
-
-
- o Per Interface:
- Datagrams received with IP errors
- Datagrams received for this gateway
- Datagrams received to be forwarded
- Datagrams looped
- Bytes received
- Datagrams sent, originating at this gateway
- Datagrams sent to destination hosts
- Datagrams dropped due to flow control limitations
- Datagrams dropped due to full queue
- Bytes sent
-
- o Per Neighbor:
- Routing updates sent to
- Routing updates received from
- Datagrams sent, originating here
- Datagrams forwarded to
- Datagrams dropped due to flow control limitations
- Datagrams dropped due to full queue
- Bytes sent
-
-
-
-
-
-
-
- -13-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- 4.3 ICMP
-
-
- The gateway will generate the following ICMP messages under
-
- appropriate circumstances as defined by the ICMP specification
-
- [4]:
-
-
- o Echo Reply
- o Destination Unreachable
- o Source Quench
- o Redirect
- o Time Exceeded
- o Parameter Problem
- o Information Reply
-
-
-
-
- 4.4 Gateway-to-Gateway Protocol
-
-
- The gateway uses the Gateway-to-Gateway Protocol (GGP) to
-
- determine connectivity to networks and neighbor gateways; it is
-
- also used in the implementation of a dynamic, shortest-path
-
- routing algorithm. The current GGP message formats (for release
-
- 1003 of the gateway software) are presented in Appendix A.
-
-
-
-
- 4.4.1 Determining Connectivity to Networks
-
-
- When a gateway starts running it assumes that all its
-
- neighbor gateways are "down," that it is disconnected from
-
-
-
-
- -14-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- networks to which it is attached, and that the distance reported
-
- in routing updates from each neighbor to each network is
-
- "infinity."
-
-
- The gateway first determines the state of its connectivity
-
- to networks to which it is physically attached. The gateway's
-
- connection to a network is declared up if it can send and receive
-
- internet datagrams on its interface to that network. Note that
-
- the method that the gateway uses to determine its connectivity to
-
- a network is network-dependent. In some networks, the host-to-
-
- network protocol determines whether or not datagrams can be sent
-
- and received on the host interface. In these networks, the
-
- gateway simply checks-status information provided by the protocol
-
- in order to determine if it can communicate with the network. In
-
- other networks, where the host-to-network protocols are less
-
- sophisticated, it may be necessary for the gateway to send
-
- datagrams to itself to determine if it can communicate with the
-
- network. In these networks, the gateways periodically poll the
-
- network using GGP network interface status messages [Appendix A]
-
- to determine if the network interface is operational.
-
-
- The gateway has two rules relevant to computing distances to
-
- networks: 1) if the gateway can send and receive traffic on its
-
-
-
-
- -15-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- network interface, its distance to the network is zero; 2) if it
-
- cannot send and receive traffic on the interface, its distance to
-
- the network is "infinity." Note that if a gateway's network
-
- interface is not working, it may still be able to send traffic to
-
- the network on an alternate route via one of its neighbor
-
- gateways.
-
-
-
-
- 4.4.2 Determining Connectivity to Neighbors
-
-
- The gateway determines connectivity to neighbors using a "K
-
- out of N" algorithm. Every 15 seconds, the gateway sends GGP
-
- Echo messages [Appendix A] to each of its neighbors. The
-
- neighbors respond by sending GGP echo replies. If there is no
-
- reply to K out of N (current values are K=3 and N=4) echo
-
- messages sent to a neighbor, the neighbor is declared down. If a
-
- neighbor is down and J out of M (current values are J=2 and M=4)
-
- echo replies are received, the neighbor is declared to be up.
-
- The values of J,K,M,N and the time interval are operational
-
- parameters which can be adjusted as required.
-
-
-
-
-
-
-
-
-
-
- -16-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- 4.4.3 Exchanging Routing Information
-
-
- The gateway sends routing information in GGP Routing Update
-
- messages. The gateway receives and transmits routing information
-
- reliably using sequence-numbered messages and a retransmission
-
- and acknowledgment scheme as explained below. For each neighbor,
-
- the gateway remembers the Receive Sequence Number, R, that it
-
- received in the most recent routing update from that neighbor.
-
- This value is initialized with the sequence number in the first
-
- Routing Update received from a neighbor after that neighbor's
-
- status is set to "up." On receipt of a routing update from a
-
- neighbor, the gateway subtracts the Receive Sequence Number, R,
-
- from the sequence number in the routing update, S. If this value
-
- (S-R) is greater than or equal to zero, then the gateway accepts
-
- the routing update, sends an acknowledgment (see Appendix A) to
-
- the neighbor containing the sequence number S, and replaces the
-
- Receive Sequence Number, R, with S. If this value (S-R) is less
-
- than zero, the gateway rejects the routing update and sends a
-
- negative acknowledgment [Appendix A] to the neighbor with
-
- sequence number R.
-
-
- The gateway has a Send Sequence Number, N, for sending
-
- routing updates to all of its neighbors. This sequence number
-
-
-
-
- -17-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- can be initialized to any value. The Send Sequence Number is
-
- incremented each time a new routing update is created. On
-
- receiving an acknowledgment for a routing update, the gateway
-
- subtracts the sequence number acknowledged, A, from the Send
-
- Sequence Number, N. If the value (N-A) is non-zero, then an old
-
- routing update is being acknowledged. The gateway continues to
-
- retransmit the most recent routing update to the neighbor that
-
- sent the acknowledgment. If (N-A) is zero, the routing update
-
- has been acknowledged. Note that only the most recent routing
-
- update must be acknowledged; if a second routing update is
-
- generated before the first routing update is acknowledged, only
-
- the second routing update must be acknowledged.
-
-
- If a negative acknowledgment is received, the gateway
-
- subtracts the sequence number negatively acknowledged, A, from
-
- its Send Sequence Number, N. If this value (N-A) is less than
-
- zero, then the gateway replaces its Send Sequence Number, N, with
-
- the sequence number negatively acknowledged plus one, A+1, and
-
- retransmits the routing update to all of its neighbors. If (N-A)
-
- is greater than or equal to zero, then the gateway continues to
-
- retransmit the routing update using sequence number N. In order
-
- to maintain the correct sequence numbers at all gateways, routing
-
- updates must be retransmitted to all neighbors if the Send
-
-
-
- -18-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- Sequence Number changes, even if the routing information does not
-
- change.
-
-
- The gateway retransmits routing updates periodically until
-
- they are acknowledged and whenever its Send Sequence Number
-
- changes. The gateway sends routing updates only to neighbors
-
- that are in the "up" state.
-
-
-
-
- 4.4.4 Computing Routes
-
-
- A routing update contains a list of networks that are
-
- reachable through this gateway, and the distance in "number of
-
- hops" to each network mentioned. The routing update only
-
- contains information about a network if the gateway believes that
-
- it is as close or closer to that network then the neighbor which
-
- is to receive the routing update. The network address may be an
-
- internet class A, B, or C address.
-
-
- The information inside a routing update is processed as
-
- follows. The gateway contains an N x K distance matrix, where N
-
- is the number of networks and K is the number of neighbor
-
- gateways. An entry in this matrix, represented as dm(I,J), is
-
- the distance to network I from neighbor J as reported in the most
-
-
-
-
- -19-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- recent routing update from neighbor J. The gateway also contains
-
- a vector indicating the connectivity between itself and its
-
- neighbor gateways. The values in this vector are computed as
-
- discussed above (see Section 4.4.2, Determining Connectivity to
-
- Neighbors). The value of the Jth entry of this vector, which is
-
- the connectivity between the gateway and the Jth neighbor, is
-
- represented as d(J).
-
-
- The gateway copies the routing update received from the Jth
-
- neighbor into the appropriate row of the distance matrix, then
-
- updates its routes as follows. The gateway calculates a minimum
-
- distance vector which contains the minimum distance to each
-
- network from the gateway. The Ith entry of this vector,
-
- represented as MinD(I) is:
-
-
- MinD(I) = minimum over all neighbors of d(J) + dm(I,J)
-
-
- where d(J) is the distance between the gateway and the Jth
-
- neighbor, and dm(I,J) is the distance from the Jth neighbor to
-
- the Ith network. If the Ith network is attached to the gateway
-
- and the gateway can send and receive traffic on its network
-
- interface (see Section 4.4.2), then the gateway sets the Ith
-
- entry of the minimum distance vector to zero.
-
-
-
-
-
- -20-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- Using the minimum distance vector, the gateway computes a
-
- list of neighbor gateways through which to send traffic to each
-
- network. The entry for a given network contains one of the
-
- neighbors that is the minimum distance away from that network.
-
-
- After updating its routes to the networks, the gateway
-
- computes the new routing updates to be sent to its neighbors.
-
- The gateway reports a network to a neighbor only if it is as
-
- close to or closer to that network than its neighbor. For each
-
- network I, the routing update contains the address of the network
-
- and the minimum distance to that network which is MinD(I).
-
-
- Finally, the gateway must determine whether it should send
-
- routing updates to its neighbors. The gateway sends new updates
-
- to its neighbors if every one of the following three conditions
-
- occurs: 1) one of the gateway's interfaces changes state, 2)
-
- one of the gateway's neighbor gateways changes state, and 3) the
-
- gateway receives a routing update from a neighbor that is
-
- different from the update that it had previously received from
-
- that neighbor. The gateway sends routing updates only to
-
- neighbors that are currently in the "up" state.
-
-
- The gateway requests a routing update from neighbors that
-
- are in the "up" state, but from which it has yet received a
-
-
-
- -21-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- routing update. Routing updates are requested by setting the
-
- appropriate bit in the routing update being sent [Appendix A].
-
- Similarly, if a gateway receives from a neighbor a routing update
-
- in which the bit requesting a routing update is set, the gateway
-
- sends the neighbor the most recent routing update.
-
-
-
-
- 4.4.5 Non-Routing Gateways
-
-
- A Non-routing Gateway is a gateway that forwards internet
-
- traffic, but does not implement the GGP routing algorithm.
-
- Networks that are behind a Non-routing Gateway are known a-priori
-
- to Routing Gateways. There can be one or more of these networks
-
- which are considered to be directly connected to the Non-routing
-
- Gateway. A Routing Gateway will forward a datagram to a Non-
-
- routing Gateway if it is addressed to a network behind the Non-
-
- routing Gateway. Routing Gateways currently do not send
-
- Redirects for Non-routing Gateways. A Routing Gateway will
-
- always use another Routing Gateway as a path instead of a Non-
-
- routing Gateways if both exist and are the same number of hops
-
- away from the destination network. The Non-routing Gateways path
-
- will be used only when the Routing Gateway path is down; when the
-
- Routing Gateway path comes back up, it will be used again.
-
-
-
-
- -22-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- 4.4.6 Adding New Neighbors and Networks
-
-
- Gateways dynamically add routing information about new
-
- neighbors and new networks to their tables. The gateway
-
- maintains a list of neighbor gateway addresses. When a routing
-
- update is received, the gateway searches this list of addresses
-
- for the Internet source address of the routing update message.
-
- If the Internet source address of the routing update is not
-
- contained in the list of neighbor addresses, the gateway adds
-
- this address to the list of neighbor addresses and sets the
-
- neighbor's connectivity status to "down." Routing updates are
-
- not accepted from neighbors until the GGP polling mechanism has
-
- determined that the neighbor is up.
-
-
- This strategy of adding new neighbors requires that one
-
- gateway in each pair of neighbor gateways must have the
-
- neighbor's address configured in its tables. The newest gateway
-
- can be given a complete list of neighbors, thus avoiding the need
-
- to re-configure older gateways when new gateways are installed.
-
-
- Gateways obtain routing information about new networks in
-
- several steps. The gateway has a list of all the networks for
-
- which it currently maintains routing information. When a routing
-
- update is received, if the routing update contains information
-
-
-
- -23-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- about a new network, the gateway adds this network to the list of
-
- networks for which it maintains routing information. Next, the
-
- gateway adds the new network to its distance matrix. The
-
- distance matrix comprises the is the matrix of distances (number
-
- of hops) to networks as reported in routing updates from the
-
- neighbor gateways. The gateway sets the distance to all new
-
- networks to "infinity," and then computes new routes and new
-
- routing updates as outlined above.
-
-
-
-
- 4.5 Exterior Gateway Protocol
-
-
- The Exterior Gateway Protocol (EGP) is used to permit other
-
- gateways and gateway systems to pass routing information to the
-
- DARPA Internet gateways. The use of the EGP permits the user to
-
- perceive all of the networks and gateways as part of one total
-
- Internet system, even though the "exterior" gateways are disjoint
-
- and may use a routing algorithm that is different and not
-
- compatible with that used in the "interior" gateways. The
-
- important elements of the EGP are:
-
-
- o Neighbor Acquisition
-
- The procedure by which a gateway requests that it become a
- neighbor of another gateway. This is used when a gateway
- wants to become a neighbor of another in order to pass
-
-
-
- -24-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- routing information. This includes the capability to accept
- or refuse the request.
-
- o Neighbor Up/Down
-
- The procedure by which a gateway decides if another gateway
- is up or down.
-
- o Network Reachability Information
-
- The facility used to pass routing and neighbor information
- between gateways.
-
- o Gateway Going Down
-
- The ability of a gateway to inform other gateways that it is
- going down and no longer has any routes to any other
- networks. This permits a gateway to go down in an orderly
- way without disrupting the rest of the Internet system.
-
-
- A complete description of the EGP can be found in IEN-209, the
-
- "Exterior Gateway Protocol" [10].
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -25-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- 5 GATEWAY SOFTWARE
-
-
- The DARPA Internet Gateway runs under the MOS operating
-
- system [9] which provides facilities for:
-
-
- o Multiple processes
- o Interprocess communication
- o Buffer management
- o Asynchronous input/output
- o Shareable real-time clock
-
-
- There is a MOS process for each network that the gateway is
-
- directly connected to. A data structure called a NETBLOCK
-
- contains variables of interest for each network and pointers to
-
- local network routines. Network processes run common gateway
-
- code while network-specific functions are dispatched to the
-
- routines pointed to in the NETBLOCK. There are also processes
-
- for gateway functions which require their own timing, such as GGP
-
- and HMP.
-
-
-
-
- 5.1 Software Structure
-
-
- The gateway software can be divided conceptually into three
-
- parts: MOS Device Drivers, Network software, and Shared Gateway
-
- software.
-
-
-
-
-
- -26-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- 5.1.1 Device Drivers
-
-
- The gateway has a set of routines to handle sending and
-
- receiving data for each type of hardware interface. There are
-
- routines for initialization, initiation, and interruption for
-
- both the transmit and receive sides of a device. The gateway
-
- supports the following types of devices:
-
-
- a) ACC LSI-11 1822
- b) DEC IMP11a 1822
- c) ACC LHDH 1822
- d) ACC VDH11E
- e) ACC VDH11C
- f) Proteon Ring Network
- g) RSRE HDLC
- h) Interlan Ethernet
- i) BBN Fibernet
- j) ACC XQ/CP X.25 **
- k) ACC XQ/CP HDH **
-
-
-
-
- 5.1.2 Network Software
-
-
- For each connected network, the gateway has a set of eight
-
- routines which handle local network functions. The network
-
- routines and their functions are described briefly below.
-
-
-
-
- _______________
- ** Planned, not yet supported.
-
-
-
-
- -27-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- Up.net Perform local network initialization such as
- flapping the 1822 ready line.
-
- Sg.net Handle specific local network timing functions
- such as timing out 1822 Destination Deads.
-
- Rc.net A message has been received from the network
- interface. Check for any input errors.
-
- Wc.net A message has been transmitted to the network
- interface. Check for any output errors.
-
- Rs.net Set up a buffer (or buffers) to receive messages
- on the network interface.
-
- Ws.net Transmit a message to the network interface.
-
- Hc.net Check the local network header of the received
- message. Perform any local network protocol
- tasks.
-
- Hb.net Rebuild the local network header.
-
-
- There are network routines for the following types of
-
- networks:
-
-
- o Arpanet (a,b,c,k)
- o Satnet (d,e,k)
- o Proteon Ring Network (f)
- o Packet Radio Network (a,b,c)
- o Rsre HDLC Null Network (g)
- o Ethernet (h)
- o Fibernet (i)
- o Telenet X.25 (j) **
-
-
- Note: The letters in parentheses refer to the device drivers used
-
- _______________
- ** Planned, not yet supported.
-
-
-
-
- -28-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- for each type of network as described in the previous section.
-
-
-
-
- 5.1.3 Shared Gateway Software
-
-
- The internet processing of a datagram is performed by a body
-
- of code which is shared by the network processes. This code
-
- includes routines to check the IP header, perform IP
-
- fragmentation, calculate the IP checksum, forward a datagram, and
-
- implement the routing, monitoring, and error reporting protocols.
-
-
-
-
- 5.2 Gateway Processes
-
-
- 5.2.1 Network Processes
-
-
- When the gateway starts up, each network process calls its
-
- local network initialization routine and read start routine. The
-
- read start routine sets up two maximum network size buffers for
-
- receiving datagrams. The network process then waits for an input
-
- complete signal from the network device driver.
-
-
- When a message has been received, the MOS Operating System
-
- signals the appropriate network process with an input complete
-
- signal. The network process wakes up and executes the net read
-
-
-
-
- -29-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- complete routine. After the message has been processed, the
-
- network process waits for more input.
-
-
- The net read complete routine is the major message
-
- processing loop in the gateway. The following actions are
-
- performed when a message has been received:
-
-
- o Call Local Network Read Complete Routine
- o Start more reads
- o Check local Network Header
- o Check Internet header
- o Check if datagram is for the gateway
- o Forward the datagram if necessary
- o Send ICMP error message if necessary.
-
-
-
-
- 5.2.2 GGP Process
-
-
- The GGP process periodically sends GGP echos to each of the
-
- gateway's neighbors to determine neighbor connectivity, and sends
-
- interface status messages addressed to itself to determine
-
- network connectivity. The GGP process also sends out routing
-
- updates when necessary. The details of the algorithms currently
-
- implemented by the GGP process are given in Section 4.4,
-
- Gateway-to-Gateway Protocol, and in Appendix C.
-
-
-
-
-
-
-
-
- -30-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- 5.2.3 HMP Process
-
-
- The HMP process handles timer-based gateway statistics
-
- collection and the periodic transmission of traps.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -31-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- APPENDIX A. GGP Message Formats
-
-
- Note that the GGP protocol is currently undergoing extensive
-
- changes to introduce the Exterior Gateway Protocol facility; this
-
- is the vehicle needed to permit gateways in other systems to
-
- exchange routing information with the gateways described in this
-
- document.
-
-
- Each GGP message consists of an Internet header followed by
-
- one of the messages explained below. The values (in decimal) in
-
- the Internet header used in a GGP message are as follows.
-
-
- Version 4.
-
- IHL Internet header length in 32-bit words.
-
- Type of Service 0.
-
- Total Length Length of Internet header and data in
- octets.
-
- ID, Flags,
- Fragment Offset 0.
-
- Time to Live Time to live in seconds. This field is
- decremented at least once by each
- machine that processes the datagram.
-
- Protocol Gateway Protocol = 3.
-
- Header Checksum The 16 bit one's complement of the one's
- complement sum of all 16-bit words in
- the header. For computing the checksum,
- the checksum field should be zero.
-
-
-
-
- -32-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- Source Address The address of the gateway's interface
- from which the message is sent.
-
- Destination Address The address of the gateway to which the
- message is sent.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -33-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- ROUTING UPDATE
-
-
- 0 1
- 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- !Gateway Type ! unused (0) ! ; 2 bytes
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- ! Sequence Number ! ; 2 bytes
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- ! need-update ! n-distances ! ; 2 bytes
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- ! distance 1 ! n1-dist ! ; 2 bytes
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- ! net11 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ; 1, 2 or 3
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ; bytes
- ! net12 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ; 1, 2 or 3
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ; bytes
- .
- .
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- ! net1n1 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ; n1 nets at
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ; dist 1
- . ...
- . ; ndist groups
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ; of nets
- ! distance n ! nn-dist ! ; 2 bytes
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- ! netn1 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ; 1, 2 or 3
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ; bytes
- ! netn2 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ; 1, 2 or 3
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ; bytes
- .
- .
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- ! netnnn !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ; nn nets at
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ; dist n
-
- Gateway Type 12 (decimal)
-
- Sequence Number The 16-bit sequence number used to
- identify routing updates.
-
- need-update An 8-bit field. This byte is set to 1
-
-
-
- -34-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- if the source gateway requests a routing
- update from the destination gateway, and
- set to 0 if not.
-
- n-distances An 8-bit field. The number of
- distance-groups reported in this update.
- Each distance-group consists of a
- distance value and a number of nets,
- followed by the actual net numbers which
- are reachable at that distance. Not all
- distances need be reported.
-
- distance 1 hop count (or other distance measure)
- which applies to this distance-group.
-
- n1-dist number of nets which are reported in
- this distance-group.
-
- net11 1, 2, or 3 bytes for the first net at
- distance "distance 1".
-
- net12 second net
-
- ...
-
- net1n1 etc.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -35-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- ACKNOWLEDGMENT or NEGATIVE ACKNOWLEDGMENT
-
-
- 0 1 2 3
- 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Gateway Type | Unused | Sequence number |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
-
-
- Gateway Type Acknowledgments are type 2. Negative
- acknowledgments are type 10.
-
- Sequence Number The 16-bit sequence number that the
- gateway is acknowledging or negatively
- acknowledging.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -36-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- GGP ECHO and ECHO REPLY
-
-
-
- 0 1 2 3
- 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Gateway Type | Unused |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
-
-
- Gateway Type 8 for echo message; 0 for echo reply.
-
- Source Address In an echo message, this is the address
- of the gateway on the same network as
- the neighbor to which it is sending the
- echo message. In an echo reply message,
- the source and destination addresses are
- simply reversed, and the remainder is
- returned unchanged.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -37-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- NETWORK INTERFACE STATUS
-
- 0 1 2 3
- 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- ! Gateway Type ! unused !
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
-
- Gateway Type 9
-
- Source Address
- Destination Address The address of the gateway's network
- interface. The gateway can send Net
- Interface Status messages to itself to
- determine if it is able to send and
- receive traffic on its network
- interface.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -38-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- APPENDIX B. Information Maintained by Gateways
-
-
- In order to implement the shortest-path routing algorithm,
-
- gateways must maintain information about their connectivity to
-
- networks and other gateways. This section explains the
-
- information maintained by each gateway; this information can be
-
- organized into the following tables and variables.
-
-
- o Number of Networks
-
- The number of networks for which the gateway maintains
- routing information and to which it can forward traffic.
-
- o Number of Neighbors
-
- The number of neighbor gateways with which the gateway
- exchanges routing information.
-
- o Gateway Addresses
-
- The addresses of the gateway's network interfaces.
-
- o Neighbor Gateway Addresses
-
- The address of each neighbor gateway's network interface
- that is on the same network as this gateway.
-
- o Neighbor Connectivity Vector
-
- A vector of the connectivity between this gateway and each
- of its neighbors.
-
- o Distance Matrix
-
- A matrix of the routing updates received from the neighbor
- gateways.
-
-
-
-
-
- -39-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- o Minimum Distance Vector
-
- A vector containing the minimum distance to each network.
-
- o Routing Updates from Non-Routing Gateways
-
- The routing updates that would have been received from each
- non-routing neighbor gateway which does not participate in
- this routing strategy.
-
- o Routing Table
-
- A table containing, for each network, a list of the neighbor
- gateways on a minimum-distance route to the network.
-
- o Send Sequence Number
-
- The sequence number that will be used to send the next
- routing update.
-
- o Receive Sequence Numbers
-
- The sequence numbers that the gateway received in the last
- routing update from each of its neighbors.
-
- o Received Acknowledgment Vector
-
- A vector indicating whether or not each neighbor has
- acknowledged the sequence number in the most recent routing
- update sent.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -40-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- APPENDIX C. GGP Events and Responses
-
-
- The following list shows the GGP events that occur at a
-
- gateway and the gateway's responses. The variables and tables
-
- referred to are listed above.
-
-
-
- o Connectivity to an attached network changes.
-
- a. Update the Minimum Distance Vector.
- b. Recompute the Routing Updates.
- c. Recompute the Routing Table.
- d. If any routing update has changed, send the new routing
- updates to the neighbors.
-
- o Connectivity to a neighbor gateway changes.
-
- a. Update the Neighbor Connectivity Vector.
- b. Recompute the Minimum Distance Vector.
- c. Recompute the Routing Updates.
- d. Recompute the Routing Table.
- e. If any routing update has changed, send the new routing
- updates to the neighbors.
-
- o A Routing Update message is received.
-
- a. Compare the Internet source address of the Routing Update
- message to the Neighbor Addresses. If the address is not
- on the list, add it to the list of Neighbor Addresses,
- increment the Number of Neighbors, and set the Receive
- Sequence Number for this neighbor to the sequence number
- in the Routing Update message.
-
- b. Compare the Receive Sequence Number for this neighbor to
- the sequence number in the Routing Update message to
- determine whether or not to accept this message. If the
- message is rejected, send a Negative Acknowledgment
- message. If the message is accepted, send an
- Acknowledgment message and proceed with the following
- steps.
-
-
-
- -41-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- c. Compare the networks reported in the Routing Update
- message to the Number of Networks. If new networks are
- reported, enter them in the network vectors, increase the
- number of networks, and expand the Distance Matrix to
- account for the new networks.
-
- d. Copy the routing update received into the appropriate row
- of the Distance Matrix.
-
- e. Recompute the Minimum Distance Vector.
-
- f. Recompute the Routing Updates.
-
- g. Recompute the Routing Table.
-
- h. If any routing update has changed, send the new routing
- updates to the neighbors.
-
- o An Acknowledgment message is received.
-
- Compare the sequence number in the message to the Send
- Sequence Number. If the Send Sequence Number is
- acknowledged, update the entry in the Received
- Acknowledgment Vector for the neighbor that sent the
- acknowledgment.
-
- o A Negative Acknowledgment message is received.
-
- Compare the sequence number in the message to the Send
- Sequence Number. If necessary, replace the Send Sequence
- Number, and retransmit the routing updates.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -42-
-
-
-
-
-
- DARPA Internet Gateway September 1982
- RFC 823
-
-
-
- REFERENCES
-
- [1] Postel, J. (ed.), "Internet Protocol - DARPA Internet
- Program Protocol Specification," RFC 791, USC/Information
- Sciences Institute, September 1981.
-
- [2] Strazisar, V., "Gateway Routing: An Implementation
- Specification," IEN-30, Bolt Beranek and Newman Inc., August
- 1979.
-
- [3] Strazisar, V., "How to Build a Gateway," IEN-109, Bolt
- Beranek and Newman Inc., August 1979.
-
- [4] Postel, J., "Internet Control Message Protocol - DARPA
- Internet Program Protocol Specification," RFC 792,
- USC/Information Sciences Institute, September 1981.
-
- [5] Postel, J., "Assigned Numbers," RFC 790, USC/Information
- Sciences Institute, September 1981.
-
- [6] Littauer, B., Huang, A., Hinden, R., "A Host Monitoring
- Protocol," IEN-197, Bolt Beranek and Newman Inc., September
- 1981.
-
- [7] Santos, P., Chalstrom, H., Linn, J., Herman, J.,
- "Architecture of a Network Monitoring, Control and
- Management System," Proc. of the 5th Int. Conference on
- Computer Communication, October 1980.
-
- [8] Haverty, J., "XNET Formats for Internet Protocol Version 4,"
- IEN-158, Bolt Beranek and Newman Inc., October 1980.
-
- [9] Mathis, J., Klemba, K., Poggio, "TIU Notebook- Volume 2,
- Software Documentation," SRI, May 1979.
-
- [10] Rosen, E., "Exterior Gateway Protocol," IEN-209, Bolt
- Beranek and Newman Inc., August 1982.
-
-
-
-
-
-
-
-
-
-
- -43-
-
-
-
-